<?php
    // 这个接口用于添加轮播图
    header('content-type:text/html;charset=utf-8');
    
    include_once '../../fn.php';

    $text = $_POST['text'];
    $link = $_POST['link'];
    $pic = '';

    echo '<pre>';
    print_r($_POST);
    echo '</pre>';

    echo '<pre>';
    print_r($_FILES);
    echo '</pre>';

    // 处理文件
    if ($_FILES['image']['error']===0) {
        $firstName = explode('.',$_FILES['image']['name'])[0];
        $lastName = explode('.',$_FILES['image']['name'])[1];
        $newName = date('YmdHis',time()) . '-' . $firstName . '.' . $lastName;

        $pic = 'uploads/' . $newName;

        move_uploaded_file($_FILES['image']['tmp_name'],'../../' . $pic);
    }

    // 从数据库中读取轮播图数据
    $data = my_query("select * FROM options WHERE id=10;")[0]['value'];
    $data = json_decode($data,true);

    echo '<pre>';
    print_r($data);
    echo '</pre>';

    // 构建新的数据
    $arr = [
        'image' => $pic,
        'text' => $text,
        'link' => $link
    ];

    // 将新数据添加到总数据中
    $data[] = $arr;

    echo '<pre>';
    print_r($data);
    echo '</pre>';

    // 1.更新数据库
    // json_encode 默认会将中文变成unicode编码：\uxxx
    // 但是存储到数据库中，斜杠会丢失
    // 解决方法：可以设置json_encode() 的参数，让encode对中文不进行编码直接原样存储 JSON_UNESCAPED_UNICODE
    $data = json_encode($data,JSON_UNESCAPED_UNICODE);
    $result = my_exec("update options SET value = '$data' WHERE id=10;");

    // 2.将新数据返回给前端用于渲染
    echo $data;
?>